package com.gobang.domain.message;

import lombok.*;

/**
 * 匹配状态更新消息DTO
 * 服务器向客户端发送的匹配状态更新消息
 * 
 * @author System
 * @since 1.0.0
 */
@Data
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
public class MatchStatusUpdateMessage extends WebSocketMessage {
    
    /**
     * 匹配状态更新数据
     */
    private MatchStatusUpdateData data;
    
    /**
     * 匹配状态更新数据内部类
     */
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    @Builder
    public static class MatchStatusUpdateData {
        /**
         * 匹配状态
         */
        private String status;
        
        /**
         * 等待时间（秒）
         */
        private Integer waitTime;
        
        /**
         * 队列位置
         */
        private Integer queuePosition;
    }
    
    /**
     * 构造函数
     */
    public MatchStatusUpdateMessage(MatchStatusUpdateData data) {
        super("MATCH_STATUS_UPDATE");
        this.data = data;
    }
} 